Swift - Serving Static Websites
Einführung
Mit Hilfe der Swift-CLI ist es möglich, die Daten in Containern als statische Website auszuliefern. Die folgende Anleitung beschreibt die wichtigsten Schritte, um damit zu beginnen, und enthält auch ein Beispiel.
Erste Schritte
Erstellen eines Containers
Zunächst erstellen wir einen Container mit dem Namen example-webpage
, den wir als Basis für diese Anleitung verwenden werden:
swift post example-webpage
Den Container öffentlich lesbar machen
Als nächstes müssen wir sicherstellen, dass der Container öffentlich lesbar ist. Weitere Informationen zum Sichern von Containern und zum Festlegen von Bucket-Richtlinien finden Sie hier:
swift post -r '.r:*' example-webpage
Indexdatei der Seite setzen
Setzen Sie die Indexdatei. In diesem Fall wird index.html die Standarddatei sein, die angezeigt wird, wenn die Seite erscheint:
swift post -m 'web-index:index.html' example-webpage
Dateiliste aktivieren
Optional können wir auch die Dateiliste aktivieren. Wenn Sie mehrere Downloads bereitstellen müssen, ist es sinnvoll, die Verzeichnisliste zu aktivieren:
swift post -m 'web-listings: true' example-webpage
CSS für Dateilisten aktivieren
Aktivieren Sie ein benutzerdefiniertes Listing-Stylesheet:
swift post -m 'web-listings-css:style.css' example-webpage
Fehlerseiten einrichten
Schließlich sollten wir eine benutzerdefinierte Fehlerseite einbinden:
swift post -m 'web-error:404error.html' example-webpage
Beispiel-Webseite
Lassen Sie uns die Schritte rekapitulieren, die wir bis jetzt unternommen haben, um statische Webseiten zu aktivieren:
swift post example-webpage
swift post -r '.r:*' example-webpage
swift post -m 'web-index:index.html' example-webpage
swift post -m 'web-listings: true' example-webpage
swift post -m 'web-listings-css:style.css' example-webpage
swift post -m 'web-error:404error.html' example-webpage
Wenn die obigen Schritte abgeschlossen sind, können wir damit beginnen, unsere statische Webseite anzupassen. Das Folgende demonstriert eine schnelle Einrichtung unter Verwendung unseres Containers example-webpage
Anpassen der Seiten index.html, page.html und 404error.html
Dies wird als Startseite dienen, die einen Link zu einer sekundären Seite erstellt.
<!-- index.html -->
<html>
<h1>
See the web page <a href="mywebsite/page.html">here</a>.
</h1>
</html>
Die nächste Seite (page.html) zeigt ein Bild namens sample.png
an:
<!-- page.html -->
<html>
<img src="sample.png">
</html>
Wir können auch benutzerdefinierte Fehlerseiten hinzufügen. Beachten Sie, dass derzeit nur die Fehler 401 (Nicht autorisiert) und 404 (Nicht gefunden) unterstützt werden. Das folgende Beispiel demonstriert die Erstellung einer 404-Fehlerseite:
<!-- 404error.html -->
<html>
<h1>
404 Not Found - We cannot find the page you are looking for!
</h1>
</html>
Hochladen der Dateien index.html und page.html
Nachdem die Inhalte der Dateien erstellt wurden, laden Sie die Dateien mit den folgenden Befehlen hoch:
swift upload beispiel-webseite index.html
swift upload beispiel-webseite meinewebseite/seite.html
swift upload beispiel-webseite-meine-website/beispiel.png
swift upload beispiel-webseite 404error.html
Betrachten der Website
Wenn alle oben genannten Schritte abgeschlossen sind, können wir nun unsere neu erstellte Website betrachten. Den Link zur Website finden Sie im Optimist Dashboard > Object Store > Containers über den abgebildeten Link.
Wenn Sie auf den Link klicken, wird unsere neu erstellte Website angezeigt:
Klicken Sie auf “here”, um zu der Seite zu navigieren, auf der wir unser Beispielbild hochgeladen haben:
Für den Fall, dass wir versuchen, zu einer Seite zu navigieren, die nicht existiert, wird unsere benutzerdefinierte 404-Seite angezeigt: